// source --> https://www.mercadillomiguel.com/wp-content/plugins/admin-and-client-message-after-order-for-woocommerce/js/convo.js
/*
* NOTE: all actions are prefixed by plugin shortnam_action_name
*/
jQuery(function($) {
// stylings
$('#wooconvo-send').find('textarea').css({
'width' : '100%'
});
//showing/hiding convos
$(".nm-wooconvo-subject").click(function(){
var _convo_item = $(this).parent();
_convo_item.find(".nm-wooconvo-message, .nm-wooconvo-files").slideToggle(500);
});
//expand all message
$("a.nm-wooconvo-expand-all").click(function(){
if(wooconvo_vars.collapse_all === $(this).html()){
$(this).html(wooconvo_vars.expand_all);
$(".nm-wooconvo-message, .nm-wooconvo-files").slideUp(500);
}else{
$(this).html(wooconvo_vars.collapse_all);
$(".nm-wooconvo-message, .nm-wooconvo-files").slideDown(500);
}
});
});
function send_order_message() {
show_working('sending-order-message', false);
var _wrapper = jQuery("#wooconvo-send");
var message = _wrapper.find('.wooconvo-textarea').val();
if (message != '') {
_wrapper.find('.wooconvo-textarea').css({'border':''});
var files_attached = Array();
jQuery('input[name^="thefile_wooconvo_file"]').each(function(i, item){
//console.log(item);
files_attached.push( jQuery(item).val() );
});
var data = 'message=' + message;
data = data + '&is_admin='+ _wrapper.find('input[name="is_admin"]').val();
data = data + '&existing_convo_id='+ jQuery('input[name="existing_convo_id"]').val();
data = data + '&order_id='+ _wrapper.find('input[name="order_id"]').val();
data = data + '&wooconvo_nonce='+ jQuery('input[name="wooconvo_nonce"]').val();
data = data + '&files='+ files_attached;
data = data + '&action=wooconvo_send_message';
jQuery.post(wooconvo_vars.ajaxurl, data, function(resp) {
// console.log(resp);
if(resp.status == 'error'){
jQuery('#sending-order-message').html(resp.message);
}else{
jQuery('#sending-order-message').html(resp.message);
// remove first/default messag
jQuery(".wooconvo-first-message").remove();
var last_msg = resp.last_message;
jQuery('ol.chat').append(resp.last_message);
_wrapper.find('.wooconvo-textarea').val('');
}
});
}else{
_wrapper.find('.wooconvo-textarea').effect('shake');
// _wrapper.find('.wooconvo-textarea').css({'border':'1px solid red'});
show_working('sending-order-message', true);
}
return false;
}
function get_option(key) {
/*
* TODO: change plugin shortname
*/
var keyprefix = 'wooconvo';
key = keyprefix + key;
var req_option = '';
jQuery.each(wooconvo_vars.settings, function(k, option) {
// console.log(k);
if (k == key)
req_option = option;
});
// console.log(req_option);
return req_option;
}
// a function showing working gif
function show_working(element, off) {
var _html = '';
if (off == false) {
var _html = '';
}
jQuery('#' + element).html(_html);
}
jQuery(document).ready(function($){
//add modal to all conversations
// $(".modal-convo").iziModal({
// width: 900,
// padding: 30,
// top: 60,
// zindex: 10000,
// closeButton: true,
// });
// console.log($(".modal-convo"));
$('a[class*="convo"]').each(function(index, val){
var modal_id = $(this).attr('class').split(' ').pop();
// get order id by spliting the convo-904 ( convo-order_id ) class
var order_id = modal_id.split('convo-');
// console.log( order_id[1] );
modal_id = '#modal-'+modal_id;
var data = {
'action' : 'get_wooconvo',
'order_id' : order_id[1]
}
var target = modal_id+" .iziModal-content";
$(modal_id).iziModal({
width: 900,
padding: 30,
top: 60,
zindex: 10000,
closeButton: true,
onOpening: function(modal){
modal.startLoading();
$.post(wooconvo_vars.ajaxurl, data, function(data) {
$(target).html(data);
modal.stopLoading();
});
$('.modal-convo').append('');
},
});
});
$('a[class*="convo"]').on( 'click', function(event){
event.preventDefault();
var modal_id = $(this).attr('class').split(' ').pop();
modal_id = '#modal-'+modal_id;
$(modal_id).iziModal('open');
});
});